#define _CRT_SECURE_NO_WARNINGS 

//#include <iostream>
//#include <thread>
//using namespace std;
//
//void Print(int n, int i)
//{
//	for (; i < n; i++)
//		cout << i << endl;
//	cout << endl;
//}
//
//int main()
//{
//	thread t1(Print, 100, 0);
//	thread t2(Print, 200, 100);
//
//	cout << t1.get_id() << '\n';
//	cout << t2.get_id() << '\n';
//
//
//	t1.join();
//	t2.join();
//	cout << this_thread::get_id() << endl;
//	return 0;
//}


#include <iostream>
#include <thread>
#include <mutex>
using namespace std;

int x = 0;
mutex mtx;

void Print(int n)
{
	mtx.lock();
	for (int i = 0; i < n; i++) {
		++x;
	}
	mtx.unlock();
}

int main()
{
	thread t1(Print, 100000000);
	thread t2(Print, 200000000);

	t1.join();
	t2.join();
	cout << x << endl;
	return 0;
}